﻿using System.ComponentModel;

namespace Model.BusinessModel.OutPut.sys
{
    /// <summary>
    /// 菜单输出模型
    /// </summary>
    [EnitityMapping(MenuId = "380CA40B-8B62-4EBE-86D7-91AE48292F46")]
    public class SysMenuOutPut
    {
        /// <summary>
        /// 菜单主键
        /// </summary>
        [Description("菜单主键")]
        public string? Id { get; set; }

        /// <summary>
        /// 上级菜单
        /// </summary>
        [Description("上级菜单")]
        public string? Pid { get; set; }

        /// <summary>
        /// 公司key
        /// </summary>
        [Description("公司key")]
        public string? CorporationKey { get; set; }

        /// <summary>
        /// 公司名称
        /// </summary>
        [Description("公司名称")]
        public string? CorporationName { get; set; }

        /// <summary>
        /// 系统Key
        /// </summary>
        [Description("系统Key")]
        public string? SystemKey { get; set; }

        /// <summary>
        /// 系统名称
        /// </summary>
        [Description("系统名称")]
        public string? SystemName { get; set; }

        /// <summary>
        /// 菜单路径
        /// </summary>
        [Description("菜单路径")]
        public string? Path { get; set; }

        /// <summary>
        /// 菜单图标
        /// </summary>
        [Description("菜单图标")]
        public string? MenuIcon { get; set; }

        /// <summary>
        /// 菜单标题
        /// </summary>
        [Description("菜单标题")]
        public string? Name { get; set; }

        /// <summary>
        /// 菜单模板
        /// </summary>
        [Description("菜单模板")]
        public string? Component { get; set; }

        /// <summary>
        /// 是否开启
        /// </summary>
        [Description("是否开启")]
        public bool IsOpen { get; set; }

        /// <summary>
        /// 排序
        /// </summary>
        [Description("排序")]
        public int Sort { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        [Description("创建时间")]
        public DateTime CreateTime { get; set; }

        /// <summary>
        /// 创建人员key
        /// </summary>
        [Description("创建人员key")]
        public string? CreateUser { get; set; }

        /// <summary>
        /// 是否验证
        /// </summary>
        [Description("是否验证")]
        public bool RequireAuth { get; set; }

        /// <summary>
        /// 重定向目录
        /// </summary>
        [Description("重定向目录")]
        public string? Redirect { get; set; }

        /// <summary>
        /// 创建用户
        /// </summary>
        [Description("创建用户")]
        public string? UserName { get; set; }

        /// <summary>
        /// 子节点
        /// </summary>
        [Description("子节点")]
        public List<SysMenuOutPut>? Children { get; set; }
    }
}
